package com.sac.approval.service;

import com.sac.approval.domain.AttachmentDO;
import org.thymeleaf.context.Context;

import java.util.List;

public interface EmailService {

	/**
	 * 简单文本邮件
	 * @param to 收件人
	 * @param subject 主题
	 * @param content 内容
	 */
	public void sendSimpleMail(String to, String subject, String content);

	/**
	 * 复杂类型邮件
	 * @param to 收件人
	 * @param subject 主题
	 * @param content 内容
	 */
	public void sendHtmlMail(String to, String subject, String content);
	
	/**
	 * 模板邮件
	 * @param to 收件人
	 * @param subject 主题
	 * @param context 上下文
	 * @param url 模板页面路径
	 */
	public void sendTemplateMail(String to, String subject,Context context,String url, List<AttachmentDO> attachments);
	
	/**
	 * 带附件邮件
	 * @param to 收件人
	 * @param subject 主题
	 * @param content 内容
	 * @param filePaths 附件路径
	 */
	public void sendAttachments(String to, String subject, String content, List<String> filePaths);

	/**
	 * 发送附件和嵌入式资源
	 * 内嵌资源可能是你在信件中希望使用的图像或样式表，但是又不想把它们作为附件。
	 * 说明：如你所见，嵌入式资源使用Content-ID(上例中是identifier1234)来插入到mime信件中去。你加入文本和资源的顺序是非常重要的。首先，你加入文本，随后是资源。如果顺序弄反了，它将无法正常运作！
	 * @param to 收件人
	 * @param subject 主题
	 * @param content 内容
	 * @param rscPath 资源路径
	 * @param rscId 资源id
	 */
	public void sendInLineResourceMail(String to, String subject, String content, String rscPath, String rscId);
}
